Copyright: Copyright ® 1994 A. Hermida, R. McGregor.


Learning POVCAD

The following topics provide detailed information on using POVCAD's features to create ray traceable scene files.

Topics:

How To...

Tutorials


How To...

Here are some basic explanations of common tasks in POVCAD:

  Create an Object

  Delete an Object

  Attach Colors and Textures to Objects

  Add More Texture and Color Definitions

  Create Sweep (Surface of Revolution) Objects

  Create Extruded Objects

  Create an Extruded Curve

  Extrude Data Files

  Extrude Along A Curved Path

  Extrude with a Constant Contour

  Extrude with a Variable Contour

  Create Bezier Patches

  Create Constructive Solid Geometry (CSG)

  Select Objects with the Mouse: Rotations and Translations

  Create Polygons

  Create Path Data Files For Animations

  Create Light Sources

  Change the Grid Spacing

  Convert TrueType Fonts

  Use the 2-D Curve Editor

  Use the Text Editor


   Creating an Object

Creating an object is easy.  Here are the steps:

1)  From the Object menu select the object you would like to create (or click the Primitives Toolbox button).  All objects start at the origin (0, 0, 0), except the sphere which asks for the center coordinates.

2)  To rotate, translate or scale the object select Transform from the Object menu, and choose the appropriate transformations.  The way this program was developed, rotations are always applied first -- then the translations.  Keep that in mind.

3)  If you want to edit or delete an object click on the object.  It should highlight in magenta.  If not, click the Select Object tool and choose the object to be modified from the list box.  On the bottom right of the Control Panel the current object is shown along with its texture.  If the object is already there,  you can operate on it without having to click the Select Object button.

NOTE:  The LAST object created is ALWAYS the current object.  If you wish to transform it, just go directly to Transform or Texture (if you want to put a texture on it).


   Deleting an Object

Deleting an object is just as easy as creating one.  You can select it using Select Object in the Object menu (or use the Select Object tool) and hit the Delete key, or just go to the Edit menu if it's the last object drawn and select Delete.  You can use the mouse to select an object too...read the topic Selecting Objects With a Mouse.


Attaching Textures and Colors
   Attaching Colors and Textures

To attach a texture or color to an object, select the object (if you don't select an object, the current selected object will be used).  Select on Texture or Color in the Special menu, or click either the Color or Texture tool , and select the desired color or texture.  The colors and textures available will be those of the currently selected ray tracer (this is set in the Preferences dialog).  You can edit the text box that appears.  Press the OK button.

To change the texture or color, simply re-select the object and click on a new texture or color.


   Adding More Texture and Color Definitions

POVCAD uses two files per ray tracer to read the color and texture definitions:

For POV:

colors.pv  and textures.pv  (version 1.0)

colors.pv2 and textures.pv2 (version 2.0)

For POLYRAY:

colors.def and textures.def

You can edit these files and include the names of any new colors or textures you come up with.  All of the files have the same format: 1 name per line, the name being 1 word (i.e., it must not have any spaces).  The name my_texture is acceptable while my texture is not.

The Custom Color Generator performs the task of adding and removing colors automatically.

To learn to attach textures and colors to CSG objects read the topic Creating Constructive Solid Geometry.


   Creating Sweep (Surface of Revolution) Objects

The Sweep command under the Object menu rotates and copies a curve a specified number of degrees using a specified number of segments.

To Create a Sweep Using Points:

1)  Select a View different than ISO (i.e. YX, ZX or YZ).

2)  Enable the Point On button in the Control Panel to enable point creation.

3)  Create a curve by clicking on the drawing window (up to 50 points).

4)  Select the Sweep > Points command from the Object menu.

5)  Give a name for the file to be created (the data will be saved in .RAW triangle format).

6)  Indicate the angle of the sweep (1 - 360) and the number of segments.

  If you want to erase the points and start all over use the Delete Points command in the Edit menu.  To edit the points use the 2-D Curve Editor.

  Snap On forces the points to fall in the intersections of the grid lines, while Grid Off let's you select any place on the scene view screen.

Using an Existing Data File:

POVCAD can Sweep data files that have been created with the Path commands or with any other program.  The data files must consist of a list of X, Y and Z point coordinates that define a curve or contour.

1)  Select the Sweep > Data File command from the Object menu and select the file to be swept.

2)  Give a name for the file to be created (the data will be saved in RAW format).

3)  Indicate the angle of the sweep (1 - 360) and the number of segments.

The format of RAW and SWEEP data files is:

x1 y1 z1 x2 y2 z2 x3 y3 z3

x4 y4 z4 x5 y5 z5 x6 y6 z6

...etc...

Each line of the file represents the three vertices a triangle.  Steve Anger's RAW2POV program will create objects from RAW data files.  RAW2POV will optimize a lot of the image, while POVCAD will just convert the data to triangles and that's all.

If you have Polyray, you can choose the Create Polyray Lathe command from the Special menu (A Polyray Lathe is the same as a POVCAD sweep).  Polyray can then output raw triangles from the Lathe object for use in other renderers (e.g. POV)...


   Creating Extruded Objects

The Extrude command under the Object menu works in the same way the Sweep command does.  Sweep rotates and copies a curve while Extrude displaces and copies the curve.  As an example, if you create a line and extrude it, it will look like a plane.  The extruded object will be displaced in an orientation perpendicular to the computer screen and in the direction going into the monitor.  In other words, if you are currently in the YX view, the curve will be extruded in the +Z direction (into the screen).

To Create an Extruded Curve:

6)  Indicate the angle of the sweep (1 - 360) and the number of segments.

1)  Select a View different than ISO (i.e. YX, ZX or YZ).

2)  Enable the Point On button in the Control Panel to enable point creation.

3)  Create a curve by clicking on the drawing window (up to 50 points).

4)  Select the Extrude  > Points  command from the Object menu.

5)  Give a name for the file to be created (the data will be saved in .RAW triangle format).

6)  Enter the extrusion length.

7)  Click ISO to see the final object.

Try this with Extrude:

You can create letters with the Extrude command that will look like sheets of metal bent to form letters.  As an example create a series of points to form the letter "S".  Use the Extrude command and save it to a file.

Since that file is in RAW format, use Steve Anger's RAW2POV and make smooth surfaces.  The final product shows a nice "S" letter that looks like it was "rolled" instead of "bent" to form the letter "S".  You can have both effects.  POVCAD will generate a "bent" effect while RAW2POV can create both effects.

If you have Polyray, you can choose the Create Polyray Sweep command from the Special menu (A Polyray Sweep is the same as a POVCAD extrude).  Polyray can then output raw triangles from the Sweep object for use in other renderers (e.g. POV)...

Extruding Data Files:

POVCAD can Extrude > Data File.  After selecting this command, click on the data file to be extruded (it can be any point data file - .PTH or Curves).

Extruding Along A Curved Path

The command Extrude Along Path found in the Object menu can be used to extrude a 2-D or 3-D contour along a "curved" 3-D path.  The curve can be straight, even though these give the most trouble.  The routine will try its best to figure out how to extrude the contour.

If the function finds a problem with collinear points, it will beep and display a message and the number of the point.  In order to fix this, try displacing the point slightly so it's not collinear anymore...use the 2-D Curve Editor under the Special menu (or click the 2-D Curve Editor tool).

Constant Contour

The routine works by asking for the contour curve first, then for the path curve.  These must be data files already created by you using POVCAD or any other program that generates path data.  After selecting the files, enter a name for the RAW data file to be created.

If you select Constant Contour (Quick Preview), POVCAD will display a very close approximation of the extrusion, but won't create a .RAW data file.  This approximation will redraw much quicker in the scene.  When exported to a scene file with the Export command on the Modeler's File menu, POVCAD will generate the .RAW data file you specified when creating the preview extrusion.

Variable Contour

This works the same way as Constant Contour except that you can load a third curve called a profile curve.  This profile curve indicates the scaling factor to be applied at each section of the extrusion.  A profile data file is like any other path data file.  The path data and the profile curve should have the same number of points!  If your path data file for the extrusion has 40 points, create a profile curve with 40 points.  The routine uses the distance of each point to the X axis as the scaling factor.

If the path is curved the scaling factor will be applied in a "curved" fashion to follow the path.  It's easier if you experiment with it.   Just remember that in the profile data file, the distance from the X axis to each point determines the scaling factor at that corresponding point in the path.

If you select Variable Contour (Quick Preview), POVCAD will display a very close approximation of the extrusion, but won't create a .RAW data file.  This approximation will redraw much quicker in the scene.  When exported to a scene file with the Export command on the Modeler's File menu, POVCAD will generate the .RAW data file you specified when creating the preview extrusion.

Remember that there are two choices for the Extrude commands:  Quick Preview and .RAW, experiment with each to get a feel for them.


Quick Preview

Quick only draws the outline as it moves along the path.  This is the fastest redrawing method and generates RAW data output only when exported to a ray tracer.


.RAW

Using .RAW will show how the extrusion really looks like, but it's slow.  Generates RAW data output only when exported to a ray tracer.


   Creating Bezier Patches

To generate a Bezier patch, select the objects menu and click on Bezier.  When you select one of the following objects you will be asked for a name.  Use any name, but use the extension *.BEZ.  The Read A File command only checks for *.BEZ patches.  The selections available are the following:

Read A File

Once you create patches with POVCAD you can load them at anytime using this function.  You'll be asked for the name of the file and the patch(es) will be integrated in you scene file.  When you create a Bezier patch use the extension *.BEZ.  This extension is recognized by POVCAD when reading Bezier patches later.

NOTE: A Bezier object can have a maximum of 4 patches (64 nodes or control points)

Flat

This is a flat patch with 16 nodes.

Cylinder - 2 Patches

This is a collection of 2 patches (16 * 2 = 32 control points) that form a cylindrical surface.

Cylinder - 4 Patches

This is a collection of 4 patches (16 * 4 = 64 control points) that form a cylindrical surface.

Cone

This is a collection of 3 patches (16 * 3 = 48 control points) that form a conical surface.

Ellipsoid

This is a collection of 4 patches (16 * 4 = 64 control points) that form an ellipsoidal surface.

Torus (Top)

This is a collection of 4 patches (16 * 4 = 64 control points) that form only the top half of a torus.

After creating a Bezier patch, you can deform it in the following way:

1)	Click the icon on the lower right corner named "Bezier Edit OFF".  This will toggle the icon and enable editing.

2)	The screen will be erased and only the patch will be drawn.

3)	To rotate the patch, click on the Bezier Transform button in the Control Panel and perform whatever operation you need (it's similar to the Transform function used with the other objects).

NOTE:  The Transform operations will be saved directly to the original file.  If you need the original data, use a copy.

4)	To move an individual node, click on the node to be displaced.  It is suggested that you use the ISO view to select nodes.

5)	The selected node will turn into a red circle.

6)	Now, switch to a different view such as YX, YZ or ZX.  You can now click on the new position, where the node should be.  POVCAD does not currently use a "click and drag" method but a "click to select" and a "click to move" for moving Bezier control points..

7)	If you choose to stay in the ISO view, the node will move in X and Y only and it's not a reliable view if you need precision.

8)	Once the node has moved, in order to move that node or another one, you must click on the node to be modified.  POVCAD doesn't "remember" the last moved node.

In the Special menu, there is a command named Bezier Setup.  This option lets you select if you want to see the control grid, the Bezier surface patch, or both (or none!).  There is also the option of selecting the number of mesh lines in the Bezier patch.  The number goes from 3 to 13 lines per side.  The higher the number, the better it will look on the screen (but the slower it gets).

To exit the editing area, click on the Bezier Edit ON button to toggle it to Off.


   Creating Constructive Solid Geometry (CSG)

Let's use an example to explain this topic:

We'll assume we want to create a sphere with a hole in the middle.  Since the operation is a difference:

1)	Select Difference from the CSG menu.
2)	Create the sphere and position it.
3)	Create a cylinder (the hole) and position it.
4)	Select Close from the CSG menu.

Close is the command to tell the program that the current CSG operation has ended.  The Select Object list would look like this:

DIFFR

SPH ...

CYL ...

ENDF

Where:

DIFFR	difference operation.
SPH ...	sphere definition and transformations
CYL ...	cylinder definition and transformations
ENDF	tells the program that this is where the difference operation ends

Now let's assume that you want to create a union of 2 cylinders, each one with a hole in it:  This is how the Select Object list would look:

	Comments:
UNION	1)  The union operation starts here.
DIFFR	2)  The difference operation starts here.
SPH ....	3)  Definition for sphere #1.
CYL ...	4)  Definition for cylinder #1.
END	5)  Selected Close from the CSG menu (closes the difference).
DIFFR	6)  This starts another difference.
SPH ....	7)  Definition for sphere #2.
CYL ....	8)  Definition for cylinder #2.
END	9)  Select Close from the CSG menu (closes the difference).
ENDF	10)  Select Close from the CSG menu (closes the union).
Click on the Texture tool now to add a texture to the object.

As you can see, the software uses END and ENDF to distinguish between intermediate CSG operations and the final CSG operation...in this case the DIFFR operations were the intermediates, and the UNION was the final.

The same idea applies to all CSG operations.  Composite is not a CSG, but it was the best place to put it <G>...

Polyray users

The example given above would be the same as:

POVCAD:	Polyray (output will look something like this):
UNION	object {
DIFFR	object{
CYL ...	cylinder...
SPH ...	- sphere...
END	}
DIFFR	+ object{
CYL ...	cylinder...
SPH ...	- sphere...
END	}
ENDF	}
Polyray users must follow POV's CSG format (sorry, but it seems to work for Xander...)

Textures On CSG Objects

To put a texture on a CSG object click on ENDF (using the Select Object command) to make it the current object (you'll see ENDF in the Object section of the Control Panel) then click on the Texture tool to add the one that you want.

Textures On CSG Objects - POV 2.0

Since POV 2.0 does not support composite objects you can attach textures to individual objects inside a CSG definition or as explained in the previous paragraph.

Transforming CSG /Composite objects

At this point it is not possible to transform the whole set of objects.  You can transform any of the individual objects that compose a CSG object.

Quick Comment

If you want to clip an object with 2 planes do the following:

1)	Select Intersection from the CSG menu.

2)	Create the object to be clipped.

3)	Create plane #1.

4)	Create plane #2.

5)	Rotate plane #2 so that the normal is facing opposite to plane #1's normal.  (When a plane is created, the normal is always in the + direction of the axis.)  Also, you must translate plane #2 so they're not in the same place.

Example:

plane#1	PLANE_Y, Translate_Y = 0.5
plane#2	PLANE_Y, Translate_Y = -0.5, Rotate_Z = 180

Plane #1's normal is pointing in the +Y direction, while plane #2's normal is in the -Y direction (due to rotation about Z of 180 degrees)

Any object placed in the origin will be clipped at Y = 0.5 and Y =-0.5.  Try it and see!


   Selecting Objects with the Mouse: Rotations and Translations

There are different methods for selecting objects so that you can modify them.

Using the Select Object Command

To select an object you can choose the Select Object command from the Object menu, or click the Select Object tool.  This will show a list of all objects that are currently in the scene database.  To select any of them, simply click on the line where it appears, then click on OK (or double-click the line).  Observe that in the Control Panel, the object selected will be displayed (with its texture) in the Object box.  Now you can use Transform (F3) from the Edit menu or use any of the following methods.

The currently selected object will always appear in the Object box in the Control Panel.  If you want to select a new object you can either use the Select Object command, or click on the object scroll bar in the Control Panel to move through the available objects.  The object shown in the object box is the currently selected one.

Any editing command will apply to the current selected object.  Note that this doesn't apply to the CSG commands such as UNION, ENDF, etc.

Use of the Left Mouse Button

To select an object, check that the Point On/Off button is Off.  Now, move the mouse cursor to a point near the center of the object that you want to select.  Press, the left mouse button.  The object selected will be redrawn in a light magenta color.  If POVCAD selects the wrong one, simply move the mouse to another position near the center point of the object and click.

This command can select the wrong object when various objects share a common center point, or the object you want to select is behind another one.  In those cases, change the view and retry.  If POVCAD still selects the wrong one, you can change the current view (Iso, YX, YZ, ZX) to try to find a better viewpoint.  In the worst case, use the Select Object command to select the object.

Note:  Cones are selected by clicking on the apex or near it.

Use of the Right Mouse Button

Once an object has been selected, you can Move, Copy, Copy/Rotate or Copy/Translate.  To do this, first select an object.  The next step depends on the what you want to achieve:

Move

To move the currently selected object move the mouse to the position where you want the object.  Press the right button and select Move.

Copy

To copy the current selected object move the mouse to the position where you want the new object.  Press the right button and select Copy.  The texture of the new object will be the same as the original object.

Copy/Rotate

This command is used to make multiple copies of an object, all of them rotated by a certain number of degrees.  To use this command, select an object, then move the mouse to the a point that will become the center of rotation.  Click the right mouse button.  Select Copy/Rotate.  Enter the angle between objects (in degrees).  Enter the number of copies to make, NOT including the original one.

Copy/Translate

This command is used to make multiple copies of an object, each one at a certain X, Y, Z distance from the other.  First select an object, then press the right mouse button.  Enter the number of copies you want, and the displacements of the new objects.  The displacement is a cumulative effect.

Example:

If a sphere is located at (0, 0, 0) and you enter x = 0.2, y = 0.1, z = 0.5, and then enter 3 copies, the first copy will be located at (0.2, 0.1, 0.5), the next one at (0.4, 0.2, 1.0), and the last at (0.6, 0.3, 1.5).

You can enter a value of zero for any of the coordinates.  If you put all zeros, you'll get multiple copies in the same place!


   Creating Polygons

POVCAD supports polygon decomposition, which creates solid polygon mesh surfaces from point data.  The Poly menu commands can use points from the point buffer (generated on the screen with the Point On button) or a B-Splined or Catmull-Rom Splined curve (generated from the Path menu), and assumes it is a polygon.  The polygon will be subdivided into triangles of varying sizes until the surface is complete.

IMPORTANT!!  You should try to create path data and curves in the YX plane (view).  It might work in other views but It's not guaranteed...

The Poly menu supports the following:

Freehand Polygon

Use the Point On button to create a curve or contour of the polygon.  The final polygon will match exactly with the curve.  The data is saved as a .RAW data file.

B-Spline Polygon

Use the Point On button to create a curve or contour of the polygon.  The data will be processed with a B-Spline curve fitter and smoothed.  The polygon algorithm uses the B-Spline curve to subdivide the polygon into triangles.  The data is saved as .RAW.  The polygon will not match the contour exactly (since B-Spline only approximates, it doesn't interpolate) but it will be smooth compared to the original.

Polygon From Path

Select a data file to decompose.  Use this command if you've already created a data file with the Path menu or with other programs.  The algorithm reads the point data and creates a mesh surface using variable sized triangles.

Perforated Polygon From Path

This command creates a polygon with a hole in it, and requires 2 path files:

1)	The file that has the outer curve data, and

2)	The file with the inner curve data (the hole).

Finally, it asks for the name of the .RAW data file to be created.  A surface will be generated between the outer contour and the inner contour (the hole).  If you need to create more than one hole use the Merge Outer/Inner command in the Path menu.

Example:

Let's assume that you have a 3 curves to create the letter "B" (the outer curve of the letter, the top hole and the bottom hole.  Let's also assume that the names of the files are B.DAT, TOPHOLE.DAT and BOTMHOLE.DAT.  First use the Merge command in the Path menu and MERGE B.DAT and TOPHOLE.DAT into 1 path file called BTEMP.DAT.  You now have 2 choices.  You can either:

   Merge BTEMP.DAT and BOTMHOLE.DAT, and then use the Path Data command in the Poly menu, or

   Use the Perforated command in the Poly menu with BTEMP.DAT and BOTMHOLE.DAT.

Polygon Tips

   When creating a curve to be used as a polygon, the first and last point can be different (not necessary to be closed).

   If you draw an imaginary line from the last point to the first on a curve, it must not intersect any other line in the same curve.

   You can use any orientation when defining the curve, i.e., it can be clockwise or counterclockwise.  The algorithm will re-orient the data efficiently.  The object can be convex or concave.

   If the routine doesn't work properly (for whatever unknown reason), delete the .RAW object created and try again.  The curve will still be there.

   Even though you must create the curves originally in the XY plane, the Z-axis values of each curve can be different.  As an example, let's say that you want to create a surface which will not be flat, but roughly looking like a (truncated) cone.  Create the outer contour first, then the inner contour.  Now, use the Transform (F3) command from the Object menu to translate the inner curve in the +Z direction.  If you now look at the curves in the YZ plane, you will see 2 lines...the leftmost line is the outer curve and the rightmost curve is the inner contour.  Choose Save Points from the Path menu to save the inner curve new data.  The points will be saved as a *.PTH data file.  Now, using the Perforated Polygon From Path command in the Poly menu, select the outer curve and the *.PTH file that you just created (the inner curve that has been displaced in the +Z axis).  The surface will end up looking like a cone aligned with the Z-axis.  This is pretty handy when creating beveled fonts.


   Creating Path Data Files For Animations

This feature allows you to create data files of paths that can be used in animation programs, including Polyray.  Simply peruse the Path menu and select which type of curve to create.  These data files can be transformed using the same methods as any of the objects supported by POVCAD.

After creating the curves you can use them to animate your ray traced images.  POVCAD simply creates the curves and shows them with the geometry so you have a better understanding of how things might look.  Remember, you can scale, rotate and translate the data like any other object!  You can also use them in combination with the Poly menu to create surfaces.

To create a curve, select the corresponding menu command and you'll be asked for a filename to save the data.  This is done to reduce memory requirements on your system.  The following is a brief description of each Path menu command:

Load Path

Load Path reads any 3-D point ASCII file and converts it into a path.  Lines will be drawn to connect the points sequentially.

Save Curves as .PTH

Save Curves As .PTH saves your data file (e.g., myfile.ext) with a .PTH extension (e.g., myfile.pth).  Initially myfile.ext was a set of 3-D points that you created manually or with POVCAD.

The Export functions in the File menu also create the *.PTH files.  If you haven't created any 3-D objects and you don't need to export a scene file, simply use the Save Path function in the Path menu, to save your animation path files.

If a .PTH file already exists, the Save Curves as .PTH command will ask if you want to save the path with a new file name.  If you answer Yes, POVCAD will prompt you to choose a new file name for the path.  This is used primarily if you transform (scale, rotate, translate) an existing .PTH file and want to save the changes.

Save Path

Save Path saves the data currently in the point buffer to the filename you specify.  The maximum number of points is currently 50.

Linear

Click 2 points (more than that will be discarded) on the screen.  The routine will subdivide the line segment into a set of points.

Circular

Creates a circular path.  No points have to be created with the mouse.

Parabolic

Follows the curve Y = aX^2 where a is the parabola coefficient and the value of Y is the height.  The value of Z is zero, but you can create this curve from any view.  The routines will swap the axis to reflect the view you're in.

Helix

Creates a 3-D curve that resembles a "spring".  The curve follows:

x = a cos(2*pi*t)

y = a sin(2*pi*t)

z = t

Therefore Z is the "height" of the function.  This depends on the current view setting.

B-Spline

B-Spline smoothes a set of points created on the screen with the Point On command by approximating a curve from the control points.  You will be asked for the number of subdivisions of the final curve.  You can accept the pre-calculated default or modify the number as you see fit.  The original curve is not erased from memory (use the Delete Points command in the Edit menu to erase it).

Catmull-Rom

Catmull-Rom smoothes a set of points created on the screen with the Point On command by interpolating a curve passing through the control points (as opposed to the B-Spline, which only approaches them).  You will be asked for the number of subdivisions of the final curve.  You can accept the pre-calculated default or modify the number as you see fit.  You will also be asked for a tension value when using Catmull-Rom Splines.  You can use the default value (0.5) or one of your choosing.  Values approaching 0 seem to create linear interpolation while numbers larger than 0.5 can not follow the data contour correctly.  Experimentation is a must on this one.  The original curve is not erased from memory (use the Delete Points command in the Edit menu to erase it).

Merge Outer/Inner

Use this command to join an outer contour and an inner contour into one data file.  This becomes handy when creating polygons with more than one hole.  If you have one outer contour with various holes, you can consider Merging the outer curve and the first inner into a temporary file.  Then take the temporary file and Merge it with the next hole to create a new temporary.  Do this for all the holes (see the topic Perforated Polygon From Path).

Join 2 Curves

This command joins two curves into one, either as an Open or a Closed curve.

Flip Data File

This commands flips a data file, i.e., the last point becomes the first point and vice-versa.  This command can be used before calling the Join 2 Curves command.  You can need to invert the data so that lines don't cross.

Example:

      a

------------o   <- curve #1 starting point

|

|  ----------o

|  |          c

|  |

|  |

|  |         b

|  --------o    <- curve #2 starting point

----------o

     d

If you use the Join 2 Curves command the point "d" will connect to point "b".  POVCAD takes the last point from curve #1 and connects it to the starting point of #2.  Clearly, the line connecting d to c will cross over curve #2.  To eliminate this you would Flip curve #2 first, then Join it to curve #1:

      a

------------o   <- curve #1 starting point

|

|  ----------o

|  |          c

|  |

|  |

|  |         b

|  --------o    <- curve #2 starting point

----------o

     d

This will make a smooth transition from curve #1 to curve #2, which is required if you need to create a polygon with the Poly menu later.

B-Spline Data File

Works the same as the B-Spline (mentioned above), but it reads an existing data or path file.

Catmull-Rom Data File

Works the same as the Catmull-Rom (mentioned above), but it reads an existing data or path file.


   Creating Light Sources

There are three ways to create a light source object in the Modeler.  You can select the Lights command in the View menu, click the Lights tool, or press Ctrl + L.  After the Lights dialog appears choose either Point Light or Spot Light.

Point Light

Enter the Location (origin) coordinates of the light source (x, y, z).  To add a color to the light source select one from the Color list or type a color token into the Color box.  If you want to move the light source, select Transform from the Object menu and modify the translation parameters.

The rotation angles do not apply to point light sources.  The scale factors will only affect the size of the light source symbol (resembles a 3-D axis) in POVCAD, as point lights don't require a scaling factor in either POV or Polyray.

If you want to add a point light after the scene has been Exported to a scene file for POV or Polyray, you can select Point Light from the Misc menu of the Text Editor.  The definition of the light source will appear in the text.  Simply replace the question marks "?" with proper values.

Spot Light

Enter the Location (origin) coordinates of the light source (x, y, z).  Next enter the Point At coordinates (x, y, z).  Select the Angle (radius), Falloff and Tightness options.  To add a color to the light source select one from the Color list or type a color token into the Color box.  If you want to move the light source, select Transform from the Object menu and modify the translation parameters.  The scale factors will only affect the size of the light source symbol (resembles a 3-D axis) in POVCAD, as point lights don't require a scaling factor in either POV or Polyray.

Note that moving the spot light doesn't change the look at parameters.  Clicking the right mouse button will allow you to Move, Copy, Copy/Rotate or Copy/Translate the spot light.  Using the Copy/Rotate command will allow you to rotate the spot light beam.

If you want to add a spot light after the scene has been Exported to a scene file for POV or Polyray, you can select Spot Light from the Misc menu of the Text Editor.  The definition of the spot light will appear in the text.  Simply replace the question marks "?" with proper values.

Area Light

The Modeler doesn't yet support area lights, but if you want to add an area light to an existing POV or Polyray scene file you can select Area Light from the Misc menu of the Text Editor.  The definition of the area light will appear in the text.  Simply replace the question marks "?" with proper values.


Changing the Grid Spacing

The Grid helps you determine relative distances between points or objects.  To show the Grid toggle the Grid On/Off button (in the Control Panel) to On.  This enables the Grid (note that the Grid On/Off status can be set in the Preferences dialog).  Initially, the World area will be divided into 20 columns and 20 rows (always equal in number).  If you want to modify this number select the Grid Spacing command from the View menu and enter an integer number.  This number will indicate the amount of rows and columns (e.g. 10 indicates 10 rows and 10 columns).  The higher the number the more precision you'll get.

Toggle the Snap On/Off button to On to select only points which are in the grid.  Toggling to Snap Off let's you select any place in the screen.  Experiment with it.


TrueType Font Converter;Glyph
TrueType Font Converter

The TrueType Font Converter was designed to make it easy to create Polyray glyph objects for use in ray traced scenes.  The glyph objects don't appear in the modeler, but you can use the Text Editor to view the include file and make modifications.

How to use it

Simply type a text string, choose an object name for the string, select the kerning offset of the characters and click OK.  When the font dialog box pops up select a TrueType font from anywhere on your system.  Next select an include file name and directory.  The conversion is very quick, and the include file will be ready for use in ray traced scenes.

Using Polyray, the text can then be rendered and animated just like any other object, or output as raw triangles for use in POV.

Caveat

There are some fonts that don't seem to want to cooperate with the TrueType Font Converter, and in the future a lot of cool things will be added to the functionality.  For now, just be aware that occasionally a General Protection Fault can occur with fonts from certain manufacturers (not sure why just yet).  It's advised that you save everything you're working on before you try a new font family.  If it works OK, then you should be safe to use that one any time in the future without worry.


POVCAD Text Editor

  The Text Editor is an environment designed to make your life easier when dealing with ray tracing scene files.  All the standard text editor features are included (OK, no line counter) and lots more besides.

Smart Menus

Of primary importance are the "Smart Menus", that drop generic scene file text into your file, depending on the currently selected ray tracer (so maybe they're not very smart, but it beats typing!).  The text drops in with most of the typing done for you.  Your job is to edit the actual values for objects, lights or whatever.  To get a full description of all the menu commands, see the topic Menu Commands.

Example:

When you click the Spotlight command under the Misc menu you get the following --

If Polyray is the current renderer:

// spot_light color, location, pointed_at, tightness, angle, falloff

spot_light color COLOR?, <X?, Y?, Z?>, <X?, Y?, Z?>, T?, A?, F?

If POV 2.x is the current renderer:

// Spotlight

light_source {

  <X?, Y?, Z?> color COLOR?

  spotlight

  point_at <X?, Y?, Z?>

  radius #?

  falloff #?

  tightness #?

}

Just fill in the numbers!  Also present in the menus you'll find the Texture Builder, which can help you develop complex textures quickly.

Rendering

A major feature is the Render button, which can shell out to DOS, run the ray tracer and trace your scene.  Settings for the ray tracers are controlled with two batch files POVCAD generates for you:

polyrend.bat	The batch file that controls rendering for Polyray.
povrend.bat	The batch file that controls rendering for POV-Ray.

Command line switches can be set to your preferences by using the Text Editor to open the files and make modifications.  The two batch files are listed under the Edit menu.

Using REM statements makes quick work of editing these files.  Test rendering at 200x150 until everything's just as you want it, and then changing to 800x600 for a full trace would be a simple matter of REM swapping:

rem Call POV (edit the command switches to your preferences):

rem call c:\pov2\povray.exe +i%3 +o%4.tga -w200 -h150 +d0 -v +X

call c:\pov2\povray.exe +i%3 +o%4.tga -w800 -h600 +d0 -v +X

If one of these files gets screwed up or deleted, POVCAD can always generate a new, default batch file for you.


2-D Curve Editor

  The Curve Editor lets you load or create a 2-D contour or path and modify the location of the control points.

Creating Points

To create a point click on the Create option button.  By clicking on the drawing area you create a contour.  If you wish to preview a B-Spline smoothing on the curve, click on the B-Spline button.  The spin buttons determine the smoothing factor on the curve...the higher the number the smoother the curve and correspondingly, the number of points will increase.  The number is a multiplication factor for the current amount of points, i.e., if you created 5 points and select a factor of 5, the final curve will have approximately 5 X 5 points (25).

Editing Points

In order to move any point, click on the Select option button and click on the point to be moved.  To move the point simply drag it to a new position.  If you want to close an open contour, click on the Close Curve button.  To delete points one at a time, click the Erase Last Point button.

Integrating Curves with the Modeler

When you're satisfied with the curve you've developed, you can send the curve out to the Modeler's point buffer by selecting Buffer Out from the Buffer menu, or by selecting the Buffer Out button on the tool ribbon.

Likewise, you can create points at a specific locations in the Modeler, and using the Buffer In command from the Buffer menu (or the Buffer In tool button), bring the point data in from the Modeler, edit the contours of the curve in the 2-D Curve Editor, and return the curve to the Modeler (as described above) for further manipulation.


Tutorials

The following tutorials will give you some hands on experience working with various features of POVCAD.

Please note that only the first tutorial is available as part of the shareware package.  The other tutorials are distributed only to registered users of POVCAD (as a registration incentive).  The tutorials link to this help file for easy access from within POVCAD.

  Tutorial 1:  Creating Your First Scene With POVCAD

  Tutorial 2:  Using the POVCAD Primitives

  Tutorial 3:  Multiple Copies of Objects

  Tutorial 4:  Fun with CSG Objects

  Tutorial 5:  Sweep and Extrude Objects

  Tutorial 6:  Using Bezier Patches

  Tutorial 7:  Polygon Decomposition Techniques

  Tutorial 8:  A tour of the 2-D Curve Editor

  Tutorial 9:  A tour of the Text Editor

  Tutorial 10:  A Tour of the Texture Builder


Tutorial 1:  Creating Your First Scene With POVCAD

This tutorial will concentrate on the basic operations involved in creating a scene file for POV or Polyray.  The process is basically the same for every scene you develop.  In fact, you might want to create generic .CAD files that contain scene elements you can reuse in many scene files (e.g. Lights, planes aligned to create a room, etc.)

You'll now create a simple scene with three spheres and two point lights.

Create Three Spheres

1)	From the Object menu select Sphere (or use the Primitives Toolbox).
2)	Enter these values into the Sphere dialog box:
Radius:	0.25
X:	0
Y:	0
Z:	0
3)	Click the YX tool to change to the front view, then click the center of the sphere to select it.
4)	Toggle the Snap On/Off button in the Control Panel to show Snap On (if it doesn't already).  Toggle the Grid On/Off button to show Grid On.  These settings can be configured in the Preferences dialog.

At this point the grid should appear in the scene view.  The Snap On function forces the mouse to select only points that are located at the grid line intersections.  This allows you to place objects precisely.  To increase the precision of the grid, you can select Grid Spacing from the View menu.  Grid spacing of 20 (the default) is fine for now.

5)	Watching the values in the Horz and Vert boxes in the Tool Ribbon, move the mouse to location Horz: -0.5 and Vert: 0.4.  Click the right mouse button.
6)	When the Copy/Move dialog box appears, click the Copy button.  A copy of the sphere will appear at location Horz: -0.5, Vert: 0.4.  If you made a mistake, select the new sphere (by clicking at the center of the sphere) and press the Delete key to delete it.  If you've really messed up, choose the Delete All command from the Edit menu and start over at step #1.
7)	Move the mouse to location Horz: 0.6, Vert: 0.2 and click the right mouse button.
8)	When the Copy/Move dialog box appears, click the Copy button.  A copy of the sphere will appear at location Horz: 0.6, Vert: 0.2.

OK, that takes care of creating the three spheres.  Click the ISO button to change the view.

Apply Textures

Next you'll apply textures to the spheres.  First make sure that the current ray tracer is the one you want to use by checking the Preferences dialog in the Special menu (Ctrl + F12).  If the ray tracer chosen isn't the one you want to use, select the correct one.  Also, make sure that the executable file and include file paths are correct.  Next, set the working directory for the scene (this is where POVCAD will write all files by default).  When everything is correct, click the OK button.

1)	Select the sphere located at the origin <0, 0, 0>.
2)	Click the Textures tool, or select Textures from the Special menu.  Click the down arrow to display a list of the textures available for the current ray tracer.  Choose one of the following textures: Polyray:  chrome1; POV: Polished_Chrome
3)	Select the sphere on the far left and choose one of the following textures: Polyray:  sapphire_agate; POV:  Sapphire_Agate
3)	Select the sphere on the far right and choose one of the following textures: Polyray:  blood_marble; POV:  Blood_Marble
Lights

At this point each sphere should have a texture associated with it.  The next step is to create light sources for the scene.

1)	Select Lights from the View menu (Ctrl + L), or click the Lights tool (the light bulb) from the tool ribbon.
2)	Click the Point Light button, and when the Point Light dialog appears enter the values X = 5, Y = 5, Z = -10.  Keep the light's color at the default "White".  Click OK.
3)	Click the Point Light button again, and when the Point Light dialog appears enter the values X = -5, Y = 10, Z = -20.  Change the light's color to "Neon Pink".  Click OK, then click the Done button -- that's it for the lights.

You should see POVCAD's representation of the first light appear on the right-hand side of the screen (it looks like a little star).  If you want to see the positions of both lights, click the Zoom Out tool (or press F11, or select Zoom In from the View menu) four times until you see the second light appear on the left-hand side of the screen.  Notice that the World Limits change from (-1, -1, 1, 1) to (-16, -16, 16, 16).  Click the Zoom In tool (F12) to return to the original World Limits definition.

Camera

The last step is to set up the camera (viewpoint).  Select the Camera (POV) or Viewpoint (Polyray) command from the View menu, or click the Camera/Viewpoint button in the tool ribbon.

POV

Set the camera as follows:

camera {

  location  <1, 1, -1.5>

  direction <0, 0, 1>

  up        <0, 1, 0>

  right     <1.33, 0, 0>

  look_at   <0, 0, 0>

}

Make sure the Include Camera checkbox is checked.  Click the Close button to close the window.

Polyray

Set the viewpoint as follows:

viewpoint {

  from            <1, 1, -1.5>

  at              <0, 0, 0>

  up              <0, 1, 0>

  angle           45

  resolution      320, 240

  aspect          4/3

}

Make sure the Include Viewpoint checkbox is checked.  Click the Close button to close the window.

Saving the Scene

The scene is now complete.  To save the scene choose the Save command from the File menu.  Type the file name TUTOR1.CAD into the Save As dialog box and click the OK button.  The file is saved to the working directory you chose earlier.  Before you can render the scene you must Export it to your ray tracer's scene language format.

Exporting the Scene File

Choose Export from the File menu, and select the ray tracer of your choice (make sure it's the same as the currently selected ray tracer or Render won't work right!).  When the Export dialog appears type in the file name as TUTOR1.PI (Polyray) or TUTOR1.POV (POV) and click the OK button.  The scene file has been converted for use with your renderer!

Rendering the Scene

To render the scene select the Render command from the Special menu, and choose either TUTOR1.PI (Polyray) or TUTOR1.POV (POV).  POVCAD will attempt to call the ray tracer and render your scene file.  If something goes wrong, use the Text Editor to check the scene file and the batch files POVCAD uses to render (POLYREND.BAT and POVREND.BAT).


Commands
POVCAD Commands

Topics:

Keyboard Commands

Menu Commands


Menu Commands

Select any one of the following main menus to get more information on its submenu commands:

POVCAD Modeler	POVCAD Text Editor	2-D Curve Editor
File Menu	File Menu	File Menu
Edit Menu	Edit Menu	Buffer Menu
Object Menu	Misc Menu	Help Menu
Poly Menu	Transform Menu
CSG Menu	Objects Menu
View Menu	CSG Menu
Path Menu	Properties Menu
Special Menu
Help Menu


File Menu (Modeler)

Description of the commands available on the File menu:

New	Creates a new (empty) scene.
Open	Opens an existing geometry (*.CAD) file.
Import .RAW Data	Opens and displays the object(s) in a .RAW data file.
Save	Saves the current scene to the current .CAD file.
Save As	Save the current scene as a .CAD file.
Merge	Imports object data from an existing .CAD file(s) into the current scene.
.DXF to .RAW	Converts the following .DXF entities to .RAW triangles: 3DFace, Polyline
.RAW to .DXF	Converts .RAW triangle data to .DXF format.
Export	Exports the current scene to one of the following formats: POV-Ray 1.x, POV-Ray 2.x, Polyray
Print Wireframe	Prints the current screen view of the scene at the highest resolution supported by your printer.
DOS Shell	Drops to DOS as a convenience to those who enjoy the challenge of the command line (or who enjoy typing).
Exit	Quit POVCAD.


Edit Menu (Modeler)

Description of the commands available on the Edit menu:

Copy	Opens the Transform Dialog for adjustments, then copies the currently selected object.
Delete	Deletes the currently selected object.
Delete Points	Deletes all points from the Point Buffer.
Delete All	Deletes all objects from the scene.


Object Menu (Modeler)

Description of the commands available on the Object menu:

Select Object	Opens the Select Object Dialog, allowing you to select any object in the current scene.
Transform	Opens the Transform Dialog, allowing you to change object scaling, rotation and translation.
Plane X	Creates a default 1x1 plane with the normal on the X-axis.
Plane Y	Creates a default 1x1 plane with the normal on the Y-axis.
Plane Z	Creates a default 1x1 plane with the normal on the Z-axis.
Disc	Opens the Disc Dialog, allowing you to specify the attributes of a new disc object.
Cylinder	Opens the Cylinder Dialog, allowing you to specify the attributes of a new cylinder object.
Cone	Opens the Cone Dialog, allowing you to specify the attributes of a new cone object.
Sphere	Opens the Sphere Dialog, allowing you to specify the attributes of a new sphere object.
Ellipsoid	Opens the Ellipsoid Dialog, allowing you to specify the attributes of a new ellipsoid object.
Torus	Opens the Torus Dialog, allowing you to specify the attributes of a new torus object.
Box	Opens the Box Dialog, allowing you to specify the attributes of a new box object.
HeightField	Prompts you for an image file to use as a height field and show the object as a pyramid in the scene.
Sweep	Points:  Creates a surface of revolution from the points in the point buffer. Data File:  Creates a surface of revolution from the points in the data file you select.
Extrude Straight	Points:  Creates an extruded surface from the point buffer Data File:  Creates an extruded surface from the data file you select.
Extrude Along A Path	Constant Contour (Preview):  Creates a very simple constant contour extrusion screen preview from file data. Variable Contour (Preview):  Creates a very simple variable contour extrusion screen preview from file data. Constant Contour (RAW):  Creates a constant contour extrusion from a file data and writes it to a .RAW data file. Variable Contour (RAW):  Creates a variable contour extrusion from a file data and writes it to a .RAW data file.
Bezier	Read a File:  Loads a Bezier patch from a data file Flat:  Creates a flat Bezier patch Cylinder - 2 Patch:  Creates a 2-patch Bezier Cylinder Cylinder - 4 Patch:  Creates a 4-patch Bezier Cylinder Ellipsoid:  Creates a Bezier patch Ellipsoid Cone:  Creates a Bezier patch Cone Torus:  Creates a Bezier patch Torus (top half only)


Poly Menu (Modeler)

Description of the commands available on the Poly menu:

Freehand	Creates a polygon surface from the point buffer.
B-Spline	Creates a B-Spline polygon surface from the point buffer.
Polygon From Path	Creates a polygon surface from a curve data file.
Perforated Polygon From Path	Creates a polygon surface (with a hole) from inner and outer curve files.


CSG Menu (Modeler)

Description of the commands available on the CSG menu:

Union	Begin a CSG union operation
Difference	Begin a CSG difference operation
Intersection	Begin a CSG intersection operation
Composite	Begin a CSG composite operation (POV only)
Close	Close the current CSG operation


View Menu (Modeler)

Description of the commands available on the View menu:

Clear Screen	Erases the drawing area.
Redraw Screen	Redraws all scene objects.
World Limits	Opens the World Limits dialog.
Primitives Toolbox	Displays the floating Primitives Toolbox.
Lights	Opens the Lights dialog.
Camera (POV)	Opens the POV Camera dialog.
Viewpoint (Polyray)	Opens the Polyray Viewpoint dialog.
ISO (3-D)	Changes the view to 3-D Isometric.
YX (Front)	Changes to the Front view (YZ axes).
YZ (Side)	Changes to the Side view (YX axes).
ZX (Top)	Changes to the Top view (ZX axes).
Zoom In	Zooms in on the scene.
Zoom Out	Zooms out from the scene.
Grid Spacing	Opens the Grid setup dialog.


Path Menu (Modeler)

Description of the commands available on the Path menu:

Load	Loads a path file into the scene.
Save Curves (as *.PTH)	Saves curves to a data file.
Save Points	Saves point buffer data to a file.
Linear	Creates a Linear path.
Circular	Creates a Circular path.
Parabolic	Create a Parabolic path
Helix	Create a Helix path
B-Spline	Approximate a curved path from the point buffer
Catmull-Rom Spline	Interpolate a curved path from the point buffer
Merge Inner/Outer	Merge the points from two data files into a new file
Join 2 Curves	Open Curve:  Join two curves into an open curve Close Curve:  Join two curves into a closed curve
Flip Data File	Invert the points in a data file
B-Spline Data File	Approximate a curved path from a data file
Catmull-Rom Spline Data File	Interpolate a curved path from a data file


Special Menu (Modeler)

Description of the commands available on the Special menu:

Render	Renders a scene with the currently selected ray tracer.
Bezier Setup	Displays the Bezier Setup dialog.
2-D Curve Editor	Open the 2-D Curve Editor
POVCAD Text Editor	Open the POVCAD Scene File Editor
TrueType Font Converter	Open the TrueType font converter
Create Polyray Lathe	Create a Polyray Lathe object from a point data file
Create Polyray Sweep	Create a Polyray Sweep object from a point data file
Textures	Display the Textures dialog
Colors	Display the Colors dialog
Custom Colors	Opens the Custom Colors dialog.
Texture Builder	Opens the Texture Builder for the currently selected ray tracer.
Preferences	Open the Preferences dialog for setting POVCAD options


Help Menu (Modeler)

Description of the commands available on the Help menu:

Contents	Opens this Help file.
Search	Displays the POVCAD Help Search dialog.
Using Help	Displays the topic on how to use Windows Help.
Tutorials	Runs the POVCAD tutorials.
Read Me	Opens the POVCAD Readme file in MS Windows Write.
About POVCAD	Displays the About POVCAD dialog with system information.


File Menu (Text Editor)

Description of the commands available on the File menu:

New	Creates a new (empty) scene file.
Open	Opens an existing text file.
Save	Saves the current scene file.
Save As	Save the current scene as any filename you choose.
Print	Prints the current scene file at the highest resolution supported by your printer.
DOS Shell	Drops to DOS as a convenience to those who enjoy the challenge of the command line (or who enjoy typing).
Close	Closes the Text Editor.


Edit Menu (Text Editor)

Description of the commands available on the Edit menu:

Undo	Undoes any changes made since the file was last saved.
Cut	Cuts text to the Windows Clipboard.
Copy	Copies text to the Windows Clipboard.
Paste	Pastes text from the Windows Clipboard into the document.
Goto Line	Moves the caret to the specified line.
Find	Searched the text for any specified string of characters.
Select All	Highlights all text in the document.
POLYREND.BAT	Opens the Polyray render batch file for editing.
POVREND.BAT	Opens the POV render batch file for editing.


Misc Menu (Text Editor)

The text added to your scene files is based on the currently selected ray tracer.

Description of the commands available on the Misc menu:

Include	Adds a generic include statement to the file.
Declare/Define	Adds a generic declare/define statement to the file.
Default	Adds a generic default statement to the file for the following: Texture, Normal, Pigment, Finish
Camera/Viewpoint	Adds the current camera definition as defined in the Camera or Viewpoint dialogs.
Max_Trace	Adds a generic max_trace statement to the file.
Point Light	Adds a generic point light statement to the file.
Spot Light	Adds a generic spot light statement to the file.
Area Light	Adds a generic area light statement to the file.
No Shadow	Adds a no_shadow statement to the file.
Bounded By	Adds a generic bounded_by statement to the file.
Clipped By	Adds a generic clipped_by statement to the file.
Inverse	Adds a generic bounded_by statement to the file.
Background	Adds a background statement to the file using any color you choose from the Colors dialog.
Fog/Haze	Adds a generic Fog/Haze statement to the file.
Animation Frames	Adds generic Polyray animation frames setup statements to the file.


Transform Menu (Text Editor)

The text added to your scene files is based on the currently selected ray tracer.

Description of the commands available on the Misc menu:

Scale	Adds a generic scale statement to the file.
Rotate	Adds a generic rotate statement to the file.
Translate	Adds a generic translate statement to the file.
Transform All	Adds generic scale, rotate and translate statements to the file.


Objects Menu (Text Editor)

The text added to your scene files is based on the currently selected ray tracer.

Description of the commands available on the Objects menu:

Object	Adds a generic object statement to the file.
Box	Adds a generic box statement to the file.
Cone	Adds a generic cone statement to the file.
Cylinder	Adds a generic cylinder statement to the file.
Ellipsoid	Adds a generic ellipsoid statement to the file.
Plane	Adds a generic statements to the file to define the following plane types: PlaneX, PlaneY, PlaneZ, Custom (with custom normal)
Sphere	Adds a generic sphere statement to the file.
Blob	Adds a generic blob statement to the file.
Height Field	Adds a generic Height_Field statement to the file.
Smooth Triangle	Adds a generic smooth_triangle statement to the file.
Triangle	Adds a generic triangle statement to the file.
Torus	Adds a generic torus statement to the file.
Shapes 2	Adds a generic statements to the file to define the following shapes:  Tetrahedron, Octahedron, Dodecahedron, Icosahedron, Rhomboid, Hexagon, HalfCone_Y, Pyramid, Pyramid2, SquareX, SquareY, SquareZ


CSG Menu (Text Editor)

The text added to your scene files is based on the currently selected ray tracer.

Description of the commands available on the CSG menu:

Union	Adds a union statement to the file.
Difference	Adds a difference statement to the file.
Intersection	Adds an intersection statement to the file.
Composite	Adds a composite statement to the file.


Properties Menu (Text Editor)

The text added to your scene files is based on the currently selected ray tracer.

Description of the commands available on the CSG menu:

Colors	Opens the Colors dialog and adds the chosen color to the file.
Textures	Opens the Textures dialog and adds the chosen texture to the file.
Color Map	Adds a generic color_map statement to the file.
Texture Builder	Opens the Texture Builder for the current ray tracer.
Preferences	Opens the Preferences dialog.


File Menu (2-D Curve Editor)

The text added to your scene files is based on the currently selected ray tracer.

Description of the commands available on the File menu:

New	Clears the curve-editing buffer.
Open	Opens a path file for editing.
Save	Saves the current curve to a path data file.
Save As	Saves the current curve to a new path data filename.
Return	Returns control to the POVCAD Modeler.


Buffer Menu (2-D Curve Editor)

The text added to your scene files is based on the currently selected ray tracer.

Description of the commands available on the File menu:

Buffer In	Retrieves points from the main point buffer of the Modeler in to the 2-D Curve Editor buffer for modification.
Buffer Out	Saves points from the 2-D Curve Editor buffer out to the main point buffer of the Modeler.


Help Menu (2-D Curve Editor)

Description of the commands available on the Help menu:

Contents	Opens this Help file.
Search	Displays the POVCAD Help Search dialog.


Keyboard Commands

Select any one of the following modules to get information on its keyboard hot-key commands:

POVCAD Modeler Hot Keys

POVCAD Text Editor Hot Keys

2-D Curve Editor Hot Keys


Keyboard Commands (Modeler)

File Menu

Command	Press

New	Ctrl + N

Open	Ctrl + O

Save	Ctrl + S

Save As	Ctrl + A

Print	Ctrl + P

Edit Menu

Command	Press

Copy	Ctrl + C

Delete	Delete

Delete All	Shift + Delete

Object Menu

Command	Press

Select Object	F2

Transform	F3

View Menu

Command	Press

Clear Screen	F4

Redraw Screen	Ctrl + D

World Limits	Ctrl + W

Toolbox	Ctrl + T

Lights	Ctrl + L

Viewpoint	Ctrl + V

ISO	F5

YX	F6

YZ	F7

ZX	F8

Zoom In 	F11

Zoom Out	F12

Grid Spacing	Ctrl + G

Special Menu

Command	Press

Render	Ctrl + R

Bezier Setup	Ctrl + B

2-D Curve Editor	Ctrl + E

POVCAD Text Editor	Ctrl + F

TrueType Font Converter	Ctrl + Z

Texture	Ctrl + X

Color	Ctrl + K

Custom Color	Ctrl + U

Preference	Ctrl + F12

Help Menu

Command	Press

Contents	F1

Search	Ctrl + F1

Tutorials	Shift + F1


Keyboard Commands (2-D Curve Editor)

File Menu

Command	Press

New	Ctrl + N

Open	Ctrl + O

Save	Ctrl + S

Save As	Ctrl + A

Return	Ctrl + R

Buffer

Command	Press

Buffer In	F3

Buffer Out	F4

Help

Command	Press

Contents	F1

Search	Ctrl + F1


Keyboard Commands (POVCAD Text Editor)

File Menu

Command	Press

New	Ctrl + N

Open	Ctrl + O

Save	Ctrl + S

Save As	Ctrl + A

Print	Ctrl + P

Edit

Command	Press

Undo	Ctrl + Z

Cut	Ctrl + X

Copy	Ctrl + C

Paste	Ctrl + V

Goto Line	Ctrl + G

Find	Ctrl + F

Select All	Ctrl + Ins

POLYREND.BAT	F5

POVREND.BAT	F6

Properties

Command	Press

Preferences	Ctrl + F12

Help

Command	Press

Contents	F1

Search	Ctrl + F1


What's New in Version 4.0

  Redesigned User Interface

All dialogs and windows have been redesigned with a 3-D look and a more user friendly approach.  Scroll bars have been added to the drawing area for a fully scrollable viewport, replacing the directional icons used in previous versions.

All new Tool buttons give one click access to the most used commands and functions.  Also, a few cool new icons have been added for quick identification of the three POVCAD modules when minimized.

The menus have been reorganized and consolidated to make finding selections quick and painless.  The last four files used dynamically appear on the File menu for quick access.

  Preferences

A Preferences dialog has been added so you can configure POVCAD to run using your favorite options every time.  Saves settings for various options, directories, working directory and camera settings.

  Common Dialogs

The standard Windows Open, Save As, and Print dialogs have been added to help standardize the user interface.

  Lighting Features

A new dialogs support positional and spot lights.

  Context Sensitive Help

Context sensitive help has been added to menus to make using POVCAD's menu commands easier.  To find out more about a menu command, press the Alt key, then use your keyboard's arrow keys to navigate through the menus.  Press the F1 function key to find out more about the currently highlighted menu item.  This help file is fully indexed and searchable.

  Custom Color Generator

The Custom Color Generator dialog lets you mix RGB levels to your taste, and save them to disk as a named color.  You can then use your custom colors in ray traced scenes and as components of color maps.

  Select Ray Tracer

POVCAD allows you to switch between ray tracers at any time to access the various supported colors and textures of the renderer(s) you're using.  Exports scene files to POV 1.x, POV 2.x, and Polyray 1.x syntax.

  Object Limit Increased

Previous versions of POVCAD imposed a limit of 100 objects in the scene.  This limit has been increased to around 1000 objects (see the topic Limitations).  For information on the number of objects currently in the scene, and the amount of object memory remaining, check the Select Object dialog.

  Tool Tips

Tool Tips gives you quick tips on what a particular control is used for.  The Tool Tips appear near the mouse cursor when you move the it over the control in question.  Tool Tips are activated by selecting the Tool Tips option in the Preferences dialog.

  Floating Primitives Toolbox

The new Floating Primitives Toolbox lets you create primitives by simply selecting the shape you want.

  TrueType Font Converter

The new TrueType Font Converter lets you convert text using any TrueType font into Polyray glyph objects.  Using Polyray, the text can then be rendered and animated just like any other object.  The glyph objects don't appear in the modeler, but you can use the Text Editor to view the include file and make modifications.

  Speedier drawing functions

A new Dynamic Link Library (DLL) has been written that greatly improves drawing speeds.

  Separate dialogs for each primitive

InputBoxes have been replaced by specialized dialogs for each primitive.

  High Resolution Printing

New printing routines take full advantage of Windows printing capabilities, producing crisp printed output of your wireframe scene or scene file text.

  POVCAD Text Editor

The new built in POVCAD Text Editor lets you view, edit and render exported scene files, .INC, .CAD, .TEX, .WRL, .BAT or any other ASCII files without leaving POVCAD.  Plus the "Smart Menus" let you drop generic ray tracer language text into a scene file with one mouse click!

  POVCAD Texture Builder

The new Texture Builder assists in creating new textures, color maps, etc. for your scenes, and saves a lot of typing!

  Internal Rendering

You can now test-render your scenes right from POVCAD, with out any command line hassles.  From the Modeler, select Render from the Special menu.  From the Text Editor, click the Render button (or press Alt + R).  POVCAD will drop to DOS and run the currently selected ray tracer, rendering your scene.


New Features

Redesigned User Interface	Floating Primitives Toolbox
Preferences	TrueType Font Converter
Common Dialogs	Speedier Drawing Functions
Lighting Features	High Resolution Printing
Custom Color Generator	POVCAD Text Editor
Select Ray Tracer	POVCAD Texture Builder
Object Limit Increased	Internal Rendering
Tool Tips


Texture Builder

The Texture Builder assists in creating new textures, color maps, etc. for your scenes, and saves a lot of typing!  By selecting checkboxes, various items from listboxes, and supplying some numeric values, you can build complex textures very quickly.

There are different features for all supported ray tracers, but currently the most feature-rich is for POV 2.x.  At present, the Texture Builder is still evolving, but future versions will be a complete texture building solution, complete with and library save/delete/modify/preview.

Polyray

A quick n dirty Texture Builder for Polyray lets you select a number of standard texture elements, including noise surfaces.  Experiment...(this one's going to get much better in the future!)

POV 1.x

Some folks are still using POV 1.x (why is a mystery!), but the support for textures in 1.x is, and will remain, limited.  Check the boxes you want, and change the "?" to valid values.

POV 2.x

The most complete form of the Texture Builder to date is for POV 2.x.  There are separate dialogs for Pigment, Normal, and Finish.  The Include checkboxes on the main Texture Builder dialog allow you to choose what aspects of the texture to include in the text file.

The Pigment Builder lets you assign files to image maps, set up color maps, standard pigment modifiers such as turbulence & octaves, select any of the standard color map modifiers such as Gradient, Marble and Bozo, and more...

The Normal Builder lets you assign files to bump maps, select standard patterns such as Ripples and Waves, and set normal modifiers such as turbulence, octaves, etc.

The Finish Builder lets you select any of the standard finish modifiers (ambient, diffuse, etc.), select Phong or specular highlights, and set IOR and refraction levels.


Contents
  POVCAD Help Contents

  About POVCAD Help

This Help file describes the capabilities of POVCAD v4.0 for Windows, a 3-D modeler and ray tracing scene file utility program, and gives an overview of the basic commands and functions of POVCAD.

Help topics for POVCAD are divided into categories represented by the icons below.

To select a category with the mouse, point to its icon then click.  With the keyboard, press Tab to highlight the category you want then press Enter.  To return to this screen, select the Contents button at the top of the Help window.

  If you find yourself deep inside this document without a clue as to your whereabouts, don't worry!  Just look for this Up button in the gray non-scrolling region at the top of the screen.  It steps you up one level at a time until you're back at one of the following main topics:


Overview of POVCAD

Topics:

Introduction & Shareware Information

What's POVCAD?

What's New in Version 4.0

POVCAD Modeler

POVCAD 2-D Curve Editor

POVCAD Text Editor

File Formats

Speed Concerns

Support

Registration


That's the Idea!

Unfortunately, this is only a demo button.  The real Up button will be found at the top of the screen in the gray non-scrolling regions of nested topics...


About POVCAD Help

POVCAD Help is Copyright © 1994 by Alfonso Hermida and Robert McGregor.

All rights reserved.

CompuServe ID:  Alfonso Hermida 72114,2060

From the Internet:  72114.2060@compuserve.com

Pi Square BBS:  (301) 725-9080

This Help File was produced and edited by Robert McGregor.

CompuServe ID:  Robert McGregor 73122,3125

From the Internet:  73122.3125@compuserve.com


Introduction & Shareware Information

POVCAD is a modeling program for producing wireframe scenes of 3-D shapes, and for creating and editing ray traceable scene files.

There is no warranty, explicit or implied, of the suitability of this software for any purpose.  This software is provided as is, and the user of this software assumes the entire risk as to its quality, accuracy, and for any damages resulting from the use of this software.  The program has been thoroughly tested, but no software is "bug-free"...use at your own risk!  See the file povcad40.wri (Read Me in the Modeler Help menu) for full details and legal stuff...

Distribution

This program is distributed as Shareware.  You may use this program for a period of 30 days at which you must either register this software or stop using it.  Registration entitles you to support through the PI SQUARE BBS.

Registration cost is only $35 and helps to provide better software tools for improving POVCAD.  To register see the topic Registration.

Feel free to re-upload this program to other bulletin boards or on-line systems, or to give copies to friends.  Just keep it in its original, unmodified form.  Don't change the name of the ZIP file.  It's supposed to be called POVCAD40.ZIP except on CompuServe, where it's just called PVCD40.ZIP.

You may distribute POVCAD for non commercial purposes.  Distributors may charge up to $5 for this program.  No part of this package may be included as part of a commercial package without explicit written permission.  Do not include POVCAD on a floppy disk or CD along with any magazine, book, hardware product, or other software product without the author's permission.  Do not include POVCAD inside an archive along with any shareware or freeware program without the author's permission.

If you wish to distribute POVCAD with a commercial software package or a book please contact the author via Email or by snail-mail.

NOTE:  POVCAD needs the file VBRUN300.DLL (not included) in order to run.  You can download VBRUN300.DLL from the Pi Square BBS or from Compu$erve, in the GRAPHSUP forum.  The file is VBRUN3.ZIP.

Other Shareware Programs

There are several excellent shareware programs that can be used in combination with POVCAD to create great graphics:

  Your selection of ray tracer for rendering (see the topic Supported Ray Tracers) the images.

  Dave's Targa Animator (DTA), a flexible graphics conversion image processing, composition, and animation utility that runs from the DOS command line.  Among its many uses, it can convert your still images to .FLI, .FLC, .FLH, and .FLT animation files and back.

Books

Adventures in Ray Tracing

by Alfonso Hermida

Published by QUE, 1993, ISBN: 1-56529-555-2, $27.95 USA.

This book teaches the ins and outs of ray tracing with Polyray.  A fully illustrated chapter on POVCAD to help understand how to use it.

PC Graphics Unleashed

Published by SAMS, 1994, USA.

This book gives in-depth discussions and source code for a variety of important PC graphics techniques including 3-D modeling, ray tracing, animation and image processing (includes POVCAD v4.0 on the companion CD, with chapters by Alfonso Hermida and Rob McGregor).

Making Movies on Your PC

by David K. Mason and Alexander Enzmann

Published by Waite Group Press, 1993, ISBN 1-878739-41-7, $34.95 USA.

This book teaches you how to create 3-D animation sequences using the Polyray ray tracer and DTA.

Acknowledgments

Thanks to a lot of people that have helped POVCAD become such a success!

  Carleen Burgess, Peter Jack, Curtis Olson and Albert Waltner for Beta testing and all the helpful comments.

  Robert Mickelson for his excellent suggestions and beta testing.

  Dan Farmer, who was kind enough to upload the file to CompuServe and provide some cool new textures in POLYTEX.INC.

  Steve Anger for the help with the smooth triangle problem (turned out to be a bug in POVRAY!).

  Alexander Enzmann, author of the Polyray ray tracer, was enthusiastic about adding support for Polyray users (support is improving with time).  Thanks also for the algorithm used in the routines for TrueType font conversions to Polyray glyphs.

  Phil Long, Jerry Thomaston, Amanda Osborne and James P. Hawkins helped a lot.

  Thanks also to Andrew Jones for his DXF (3DFACE) input routine.

There were also some great BBS such as:

  You Can Call Me Ray BBS (Illinois)

   Bill Minus/Aaron Collins (SysOps)

   (708)358-5611

  The Graphics Alternative BBS (California)

   Adam Shiffman (SysOp)

   (510)524-2780

  Trace of Reality BBS (Virginia)

   Joe Liccel (SysOp)

   [system is down at this time]

  Monsoon BBS (Maryland)

   Sunil Gupta (SysOp)

   (410)235-2365

  InspirVision BBS (New York)

   Steve Lao (SysOp)

   718-854-6411

In Europe:

  Raytech BBS - "The UK's only Ray Tracing BBS"

   Paul Smith (SysOp)

   +44 862 88340

  CIX (UK equivalent of CompuServe)

   ECS conference, POVCAD topic

   +44 081 390 1255

who helped distribute the programs and gave overall support.

And for all of you who were so kind to register their copies.  This proves that Shareware is alive and well!  Thanks!


Topics

Distribution

Other Shareware Programs

Books

Acknowledgments


What's POVCAD?

POVCAD is a 3-D modeling tool designed to create and edit scene files for ray tracers.

With POVCAD you're able to visually create the scene file and have a pretty good idea (geometry-wise) of how the objects are positioned in 3-D space.  There is at present no support for actually viewing textures and color since POVCAD is a wire frame-based program.  Nor will you see the results of any Constructive Solid Geometry operations (yet -- it'll be in the next major revision).

Operations such as union, difference, intersection and composite objects are supported, although at present group/copy/transform of CSG objects isn't supported (it'll also be in the next major revision).  Colors and textures can be selected from a list without need of typing.

POVCAD currently consists of three main modules:

  Modeler

  Text Editor

  2-D Curve Editor

These modules work together to make creating objects and scene files graphical and easy.

Supported Ray Tracers

POVCAD was originally developed for use with the POV (Persistence of Vision) ray tracer written by the POV Team, and also supports the Polyray ray tracer by Alexander Enzmann.

POV is a copyrighted freeware ray tracer.  If you would like to get in contact with the POV team, contact:

CompuServe (800) 848-8990, GraphDev forum or call YCCMR BBS (708) 358-5611, which is a ray tracer specific BBS.

Polyray is a copyrighted shareware ray tracer.  Polyray support is not yet complete, but getting better, and a lot can be done.  Alexander Enzmann can be reached via Email by:

CompuServe as:  Alexander Enzmann 70323,2461

Internet as:  xander@mitre.org

POVCAD directly exports scene files to the POV 1.x, POV 2.x, and Polyray ray tracers.


Topics

Objects and Data Features Supported

Scene View

Animation Path Files

Output Files

Printing

Catmull-Rom Curve Fitting

File Conversions

Click n' Drag Feature For Objects

Limitations

CSG/Composite Objects

World Limits Definition

Pan Size

AutoRedraw On/Off


POVCAD Modeler

  The Modeler is the heart of POVCAD.  It is here that you can create wireframe objects and put together scene elements.

Objects and Data Features Supported in the Modeler

  Plane

  Disc

  Cylinder

  Cone

  Sphere

  Ellipsoid

  Torus

  Box

  Height Field

  Raw data files (loading)

  Sweep (solid of revolution/lathe)

  Extrude (operation on curves)

  Bezier patches

  B-Spline and Catmull-Rom Spline curve smoothing

  Positional lights and spotlights

  Camera(POV) and Viewpoint(Polyray)

  .DXF, .CAD, .TEX, .WRL, .RAW, .PTH, .DAT input/output

Scene View

The scene view can be changed between ISO (isometric), YX, YZ and ZX.  A Select Object list shows the steps you took to create any image.  You can select any of the objects from the list by double-clicking on it.  The Object List can be accessed by choosing Select Object... from the Object menu, or by clicking the Select Object tool.

Animation Path Files

An interesting feature is the ability to create or read data files with path information for animation software.  You can create linear interpolated data, circular motion, parabolic, helix or just freehand mode, where you sketch the path with the mouse.  POVCAD does not do animation but it plots the path files so you can see how things look on the screen.  The data can be transformed like any object in POVCAD and used in animation sequences.

Output Files

Session files can be saved as .RAW, .CAD, .DAT, and .PTH (for more information see the topic File Formats), and exported to POV-Ray (POV) and Polyray (PI) scene and include (INC) ASCII file formats .  There are also various functions to interact with .DXF files.

Exported scene files can be edited, saved and rendered with POVCAD's Text Editor without ever leaving the program.

Printing

POVCAD supports high resolution printing of the wireframe scene image on the screen.  Ray tracer scene file code may also be printed from the Text Editor.

Catmull-Rom Curve Fitting

The Path menu has Catmull-Rom Spline selections.  Use this to smooth out a curve created with the POINTS command or from a data file.

File Conversions

Convert .RAW data files to .DXF files (found in the File menu) using 3DFACE entities.

Read DXF files and convert to .RAW (found in the File menu) POVCAD can read 3DFACE and POLYLINE entities.  You must select the appropriate command to extract a specific entity...i.e., the 3DFACE command will only extract the 3DFACE objects from the selected DXF file.  The same applies for POLYLINE.

Click n' Drag Feature For Objects

You can click on any object and drag it to it's new location.  Press and hold the Ctrl key, click on the object and move it to it's new position.  As soon as you release the button the object will be erased and placed in its new position.

IMPORTANT NOTE:  All rotations and translations are absolute (measured from the origin).  Therefore, if an object has been translated to <1, 1, 1> and you change the x to 1.5, it will be <1.5, 1, 1> and not <2.5, 1, 1>.

Limitations

At this point around one thousand objects may be created (the number varies depending on the type of objects in a scene).  This limitation far exceeds previous versions, but can still be limiting.  You can create scenes with more objects (if you need them) by Merging files (Merge on the File menu of the Modeler) and then exporting to a ray-tracing scene file.  The next major release will support as many objects as your machine's memory can handle.

Bezier objects can have up to 4 patches.

CSG/Composite Objects

You can not Transform an entire CSG/Composite object.  You can Transform any of the components.

World Limits Definition

Like ray tracers, POVCAD uses Cartesian coordinates, and starts with the world limits set to:

-1, -1, 1, 1 (xmin, ymin, xmax, ymax).

Click on World Limits in the View menu to change the ranges, or use the ZoomIn/Out Tool buttons to scale up or down.  When you ZoomIn, the world = world / scalefactor.  When you ZoomOut, the world = world * scalefactor.

Pan Size

You can Pan (scroll) in all directions by clicking on the arrows on the scroll bars.  You may change the Pan Step Size to move faster or slower.  Experiment with it.

AutoRedraw On/Off

There's a button to toggle the AutoRedraw feature on and off.  With the option ON the drawing is sent to a buffer first and then appears on the screen.  With the option OFF the screen will be redraw every time that you select the Textures, Select Object or Transform dialogs.  Experiment to see which one works best for you.  With AutoRedraw ON you pay a price in memory consumption.  The choice is yours.  You can set your preference in the Preferences dialog.


Textures

The Textures dialog reads a list of texture tokens from the three texture list files, one for each supported ray tracer.


Color List Files

The Color dialog reads colors from the following files, depending on the currently selected ray tracer:

colors.def (Polyray)

colors.pv (POV 1.x)

colors.pv2 (POV 2.x).


Custom Color Files

The custom color files contain any custom color defined by you, or created with the Custom Color Generator.  There are two such files, one for POV, and one for Polyray:

polycolr.inc (Polyray)

povcolr.inc (POV 1.x & 2.x)


Texture List Files

The Texture dialog reads textures from the following files, depending on the currently selected ray tracer:

textures.def (Polyray)

textures.pv (POV 1.x)

colors.pv2 (POV 2.x).


Transform Dialog

The Transform dialog allows you to scale, rotate or translate objects.  Access the Transform dialog by selecting Transform from the Object Menu, or by pressing F3 from the Modeler module.


File Formats

POVCAD saves 3 files for every session (the PTH file is optional):

*.CAD	The object definition file
*.TEX	File with the textures of each object
*.WRL	World limits definition of the scene
*.PTH	(Optional) Data files to be used in your animation programs
The Geometry (*.CAD) File Structure

This is the format that POVCAD uses for those of you that want to create external programs to deal with them.  The file is ASCII text with double quotes at the beginning and end of each statement:

rx, ry, rz = rotations about each axis (absolute)

tx, ty, tz = translations on each axis

sx, sy, sz = scale factors for x, y and z

Important: Each parameter is separated by 1 space.  This is important if you're writing utilities for POVCAD.  This space is required.

Plane

"PLN axis rx ry rz tx ty tz sx sy sz"

Example:

"PLN X 0.0 0.0 0.0 0.0 0.0 0.0 1 1 1"

Cylinder

"CYL radius height rx ry rz tx ty tz sx sy sz"

Example:

"CYL .2 1 0.0 0.0 0.0 0.0 0.0 0.0 1 1 1"

Cone

"CON radius height rx ry rz tx ty tz sx sy sz"

Example:

"CON .2 1 0.0 0.0 0.0 0.0 0.0 0.0 1 1 1"

Sphere

"SPH radius rx ry rz tx ty tz sx sy sz"

(tx ty and tz are the center of the sphere)

(sx sy sz must have the same value)

Example:

"SPH .5 0.0 0.0 0.0 0.0 0.0 0.0 1 1 1"

Ellipsoid

"ELI xradius yradius zradius rx ry rz tx ty tz sx sy sz"

Example:

"ELI .5 .2 .3 0.0 0.0 0.0 0.0 0.0 0.0 1 1 1"

Torus

"TOR radius_major radius_minor rx ry rz tx ty tz sx sy sz"

Example:

"TOR .7 .2 0.0 0.0 0.0 0.0 0.0 0.0 1 1 1"

Box

"BOX rx ry rz tx ty tz sizex sizey sizez"

(the Box is a unit cube that has been scaled to size)

Example:

"BOX 0.0 0.0 0.0 0.0 0.0 0.0 1 2 .1"

HeightField

"HFL filename.ext rx ry rz tx ty tz sx sy sz"

(POVCAD draws a pyramid to represent it, with dimensions x=1 y=1 z=1,  so it must be scaled properly.  Check POV's docs on height_field.)

Example

"HFL mountain.gif 0.0 0.0 0.0 0.0 0.0 0.0 1000 1000 3245"

RAW

"RAW filename.ext rx ry rz tx ty tz sx sy sz"

(Consider using Steve Anger's RAW2POV, it's more efficient!)

Example:

"RAW sweep.dat 0.0 0.0 0.0 0.5 1.3 0.0 1 1 1"

Sweep

(same as RAW except the SWP keyword appears instead of RAW)

Extrude

(same as RAW)

Path

"PTH filename.ext 0.0 0.0 0.0 0.0 0.0 0.0 1 1 1"

This command points to a file that was created with POVCAD or that you made up yourself.  It has the format:

p1.x p1.y p1.z

p2.x p2.y p2.z

...etc...

Light Source

"LTS 0.0 0.0 0.0 X Y Z .25 .25 .25"

Comments:

The first three numbers are not used at all.  X Y Z refer to the light source position.  The three .25 values are scaling factors that only affect the drawing on POVCAD.  You may change those numbers to suit your needs by using the XFORM command (scale x,y,z).

The light_source color is in the *.TEX file.

Spot Light

"SPL R F T Xa Ya Za Xf Yf Zf .25 .25 .25"

Comments:

R refers to the radius, F to the falloff and T to the tightness of the spot beam.  Xa Ya Za refer to the point_at position.  Xf Yf Zf refer to the light source (from) position.  The three .25 values are scaling factors that only affect the drawing on POVCAD.  You may change those numbers to suit your needs by using the Transform (F3) command (scale x,y,z).

The spot light color is in the *.TEX file.

Example:

"SPL 3 10 5 0 0 0 5 5 -10 .25 .25 .25"

Bezier

"BEZ filename.ext 0.0 0.0 0.0 0.0 0.0 0.0 1 1 1"

Comments:

The only parameter used is the filename.  Bezier parameters are transformed and their data file is modified accordingly (using the Bezier Transform button).

Disc

"DSC Ro Ri 0.0 0.0 0.0 0.0 0.0 0.0 1 1 1"

Ro = outer radius

Ri = inner radius (if object is a washer)

If Ri = 0 then a disc is drawn else a washer is drawn.

The Texture (*.TEX) File Structure

The *.TEX file has a line for every item in the *.CAD file.  Some places may be empty but the file length is the same as the *.CAD file.  If you created light_sources, the colors will appear here also.

The World (*.WRL) File Structure

This file has 4 values (if it's not found in your directory, POVCAD assumes a world definition of (-1,-1)-(1,1) ):

WXleft  WYbottom

WXright WYtop

These values correspond to the YX plane view.

The Path (*.PTH) File Structure

This is a straight ASCII file with a list of 3-D points:

p1.x p1.y p1.z

p2.x p2.y p2.z

...etc...

The data has already been transformed by any operations you might have done inside POVCAD.

The Bezier Patch (*.BEZ) File Structure

If you have a program that creates the control points for Bezier patches, POVCAD can read it.  The data file can have data for up to 4 patches in this format, (i.e., where cp31.x is patch #3, control point #1, X value):

cp11.x cp11.y cp11.z

cp12.x cp12.y cp12.z

cp13.x cp13.y cp13.z

...etc...

cp21.x cp21.y cp21.z

cp22.x cp22.y cp22.z

...etc...

<up to 4 patches!>

The file is straight ASCII with 1 control point per line.

The Raw Triangle (*.RAW) File Structure

POVCAD creates .RAW data files in this format when using the Extrude and Sweep functions.  If you have an existing .RAW file created by other programs, POVCAD can read it if it follows this format.  Each line of the data file must have point data describing the three vertices of a triangle:

p1x p1y p1z    p2x p2y p2z    p3x p3y p3z

p4x p4y p4z    p5x p5y p5z    p6x p6y p6z

p7x p7y p7z    p8x p8y p8z    p9x p9y p9z

...etc...

The file is straight ASCII with 3 vertices per line.

The Color and Texture Definition Files

There are two files for each ray tracer:

  POV 1.x: colors.pv, textures.pv

  POV 2.x: colors.pv2, textures.pv2

  Polyray: colors.def, textures.def

These files consist of texture and color names that POVCAD will read.  All files follow the same format, using one name per line.  POVCAD will automatically load the files if it can find them (set the include directories in the Preferences dialog).  Files are in ASCII format.

Custom Colors Files

You can create your own custom colors with the Custom Colors Generator.  Colors are written to the files polycolr.inc and povcolr.inc, ASCII files with the standard format applicable to each ray tracer.  Color tokens are also added to the Colors dialog list in the color list files.

Custom Textures Files

You can create your own custom textures with the Texture Builder or by just being creative.  Paste your custom textures into the files polytex.inc, pov1tex.inc and pov2tex.inc, ASCII files with the standard format applicable to each ray tracer.  You can also add your custom textures to the Textures dialog list in the files textures.def (Polyray), textures.pv (POV 1.x) and textures.pv2 (POV 2.x).


File Format Topics

The Geometry (*.CAD) File Structure

The Texture (*.TEX) File Structure

The World (*.WRL) File Structure

The Path (*.PTH) File Structure

The Bezier Patch (*.BEZ) File Structure

The Raw Triangle (*.RAW) File Structure

The Color and Texture Definition Files

Custom Colors Files

Custom Textures Files


Preferences

The Preferences dialog lets you make decisions about how you want POVCAD configured at startup, and about important information such as ray tracer executable and include paths, camera setup and working directory.

The Preferences dialog can be activated from the Modeler by choosing Preferences from the Special menu, or from the Text Editor by choosing Preferences from the Modifiers menu.  It can also be activated by pressing Ctrl + F12 from either module.


Select Object

The Select Object dialog lets you select any object in the current scene.  Double clicking on the list will select the chosen object, or you can select an object from the list and click the OK button.  At the bottom of the dialog box is information about how many objects are in the current scene, and a percentage of object allocation memory remaining.

The Select Object dialog can be activated from the Modeler by choosing Select Object from the Object menu, by clicking the Select Object tool on the Tool Bar, or by pressing F2.


Custom Color Generator

The Custom Color Generator lets you create new colors on the fly, either by adjusting the color scroll bars, or by inputting numeric values between 0 and 1, inclusive.

Scroll Bar Input

By inputting a value with any of the scroll bars provided, you get automatic visual feedback about your selections.  If the scroll bar's default adjustment values aren't close enough to what you want, tweak the value using numeric input.

Numeric Input

By inputting a value in any of the text boxes provided, you can get instant visual feedback about your selection by clicking the Update button.

In either case the color box will adjust to a very close dithered approximation of the color you'll actually see when rendered.

Adding a Custom Color

Your new custom color can be added to Color dialog list by clicking the Add button.  You'll be prompted for a name for the new color, and the name will be written to the color list files. if you want it to.  The colors will also be defined in the all three custom color files, in the native syntax of each ray tracer.

Examples:

// POVCAD Custom Color (Polyray format)

define Sand1 <1.0, 0.792, 0.353>

// POVCAD Custom Color (POV-Ray format)

#declare Sand1 = color red 1.0 green 0.792 blue 0.353

Removing a Custom Color

To remove a custom color (or any color for that matter!) from the color list files, simply click the Remove button, and choose the color you want to remove from the list when the Colors dialog pops up.

Note that this doesn't remove the definition of the color from the custom color files, only from the color list files.


  Support

  Registration Form

Your comments and suggestions are welcome!  Registered users have a better chance of seeing their suggestions incorporated in new versions of POVCAD.

If you've got any requests, bug reports, suggestions, or comments, send a message via Email to:

Alfonso Hermida

CIS 72114,2060

From the Internet:  72114.2060@compuserve.com

Pi Square BBS:  (301) 725-9080

or

Rob McGregor

CIS 73122,3125

From the Internet:  73122.3125@compuserve.com

or via Snail-Mail to:

Alfonso Hermida	Rob McGregor
9346 Kings Grant Rd	PO Box 2183
Laurel MD 20723	Cocoa FL 32923-0515


  Registration Form

You are strongly encouraged to register this product.  Many long hours went into its design and development.  CompuServe members can register via the CompuServe Shareware Registration Forum (Go SWREG, registration ID #3477 -- filename PVCD40.ZIP), the $35 will be added to your CompuServe account.  Registered users of previous versions, please use the registration form provided to qualify for upgrade pricing.  Print and complete this form.  Please send Check, Money Order, or Cash to:

Rob McGregor		Alfonso Hermida
P. O. Box 2183	or	9346 Kings Grant Rd
Cocoa FL 32923-2183		Laurel MD 20723
Name:
Address:
City:
State or Province:
Postal Code
Country:
Phone:
Email Address:
Comments:

Your registration entitles you to support through Pi Squared BBS.  Write a temporary password to add your account to the BBS:

BBS password: _________________________

Registered users of a given version do not have to register for minor revisions. For example, if you registered version 2.0, then 2.0a, 2.0b, 2.0c are minor revisions, and version 4.0 will be a major revision.

Registration fees:

Upgrade from version 3.0	$ 5.00 (US)
Upgrade from version 2.x	$15.00 (US)
New user	$35.00 (US)


Pi Square BBS

(301) 725-9080


X Plane

Creates a plane with the normal in the X-axis.


Y Plane

Creates a plane with the normal in the Y-axis.


Z Plane

Creates a plane with the normal in the Z-axis.


Cone

Creates a cone.


Sphere

Creates a sphere.


Ellipsoid

Creates a ellipsoid.


Torus

Creates a torus.


Cylinder

Creates a cylinder.


Box

Creates a box.


Disc

Creates a disc.


Speed Concerns

The current object model for the 3-D wireframe code is (admittedly) rather slow.  This is due to a data/code structure inherited from previous versions.  A complete code rewrite is underway for the next version, which be much more robust, and a lot faster.  For now -- well, what do want for thirty-five bucks? <BG>

Performance Comparisons

As with ray tracing, POVCAD uses a lot of intense mathematical equations to do what it does.  The faster your machine, the better performance POVCAD will display.

386

On a 386 you'll find POVCAD to be (nearly) intolerably slow.  A math co-processor will certainly help, and performance should be (nearly) tolerable.  All we can say is, use a faster machine <G>.

Tip:  Keep AutoRedraw On, or you'll want to scream at the constant redraws (especially with ToolTips!).

486 SX/DX

On a 486 SX the performance is tolerable.  A 486 DX with a math co-processor will yield good performance.

486 DX2

On a full blown 486 DX2 with a math co-processor, etc., performance is very good.

Pentium

On Pentium systems (especially the P90), POVCAD works great.  Instant redraw; near real-time operation.  The system of choice for ray tracing!

Solutions

Actually, we're working on the solutions to the speed problem, and slower machines will run POVCAD much faster in the next version.  Registered users will get the next version at the low cost of only $10.00 US.


Tool Buttons

The new POVCAD tool buttons are designed to give you quick access to the most used functions of the program, speeding up development time.  The tools are divided into four different areas of the screen:

  At the top of the screen is the Tool Ribbon.

  At the left of the screen is the Tool Bar.

  Floating around wherever you want it is the floating Primitives Toolbox.

  At the far right of the screen is the Control Panel.


Tool Ribbon

The tool ribbon consists of buttons used to manipulate files and access other areas of the system or program.  Click any of the buttons below to get a full description.


Tool Bar

The tool bar consists of buttons used to manipulate the scene and/or view.  Click any of the buttons below to get a full description.


Primitives Toolbox

The toolbox consists of buttons used to create primitive object in the scene.  Click any of the buttons below to get a full description.


Control Panel

The control panel contains various tools for setting many of POVCAD's features, or for working with objects in your scenes.  Click any of the buttons or other areas below to get a full description.


World Limits

Displays the limits of the horizontal and vertical axes.  To change the World Limits, choose Set World Limits from the View menu of the Modeler.


Pan Step Size

The value in this box controls the distance the main scroll bars can scroll the scene view.  The default size is .25.


Zoom Factor

The value in this box controls the distance of zoom, either in or out, on the scene view.  The default size is 2.0.


AutoRedraw On/Off

This button toggles the AutoRedraw of the scene view on or off.  If On, the scene remains in a memory buffer and changes reappear all at once.  If Off, the scene redraws every time the screen needs to repaint (which can be a little maddening).  The default for this button can be set in the Preferences dialog.


Bezier Transform

This button pops up the Bezier Transform dialog, which allows you to scale, rotate or translate the currently selected Bezier patch.


Bezier Edit On/Off

This button toggles Bezier editing On or Off.  You can manipulate the control points of a patch if On.


Grid On/Off

This button toggles the Grid On or Off, showing the grid if On.  To change the Grid Spacing, choose Grid Spacing from the View menu of the Modeler, or press Ctrl + G.  The default for this button can be set in the Preferences dialog.


Snap On/Off

This button toggles the Snap to Grid On or Off, showing the grid if On.  If On, the mouse cursor will snap to the grid intersections, allowing accurate placement of objects.  The default for this button can be set in the Preferences dialog.


Point On/Off

This button toggles point creation On or Off.  If On, points will be created wherever you click the mouse in the viewing window.  Lines connect the points.  Note that points cannot be created in the ISO view.


Object

This box shows the most recently created or selected object.


Texture

This box shows the texture you've chosen for most recently created or selected object.


Clear Screen

Clicking this temporarily button erases everything from the viewing area..


Redraw

Clicking this button redraws everything in the scene.


Object Scroll Bar

Use this scroll bar to view the various scene elements and their accompanying textures.


Pick Tool

This button allows you to manipulate objects with the mouse.


Curve Tool

This button opens the 2-D Curve Editor.  You can also press Ctrl + E.


Zoom In Tool

This button allows you to zoom in on the scene as determined by the current Zoom Factor.  You can also press F11.


Zoom Out Tool

This button allows you to zoom out from the scene as determined by the current Zoom Factor.  You can also press F12.


Select Object Tool

This button opens the Select Object dialog.  You can also press F2.


ISO Tool

This button switches the scene to the 3-D Isometric view.  You can also press F5.


YX Tool

This button switches the scene to the XY (Front) view.  You can also press F6.


YZ Tool

This button switches the scene to the XZ (Side) view.  You can also press F7.


ZX Tool

This button switches the scene to the ZX (Top) view.  You can also press F8.


Textures Tool

This button opens the Textures dialog.  You can also press Ctrl + X.


Colors Tool

This button opens the Colors dialog.  You can also press Ctrl + K.


Origin Tool

This button resets the world limits to look at the origin.


New Button

This button creates a new (empty) scene.  You can also press Ctrl + N.


Open Button

This button opens an existing geometry (*.CAD) file.  You can also press Ctrl + O.


Save Button

This button saves the current scene to the current .CAD file.  You can also press Ctrl + S.


Light Button

This button opens the lighting dialog.  You can also press Ctrl + L.


Camera Button

This button opens the camera or Viewpoint dialog, depending on the currently selected ray tracer.


TrueType Font Button

This button opens the TrueType Font Converter.  You can also press Ctrl + Z.


Primitives Button

This button opens the floating Primitives Toolbox.  You can also press Ctrl + T.


World Limits Button

This button opens the World Limits dialog.  You can also press Ctrl + W.


Text Editor Button

This button opens the POVCAD Text Editor.  You can also press Ctrl + F.


Print Button

This button prints the current view of the wireframe scene.  You can also press Ctrl + P.


Search Button

This button opens the POVCAD Help Search dialog.  You can also press Ctrl + F1.


Help Button

This button opens this POVCAD Help File...  You can also press F1.


Horz

This box displays the current horizontal mouse position in Cartesian coordinates relative to the current scene view.


Vert

This box displays the current vertical mouse position in Cartesian coordinates relative to the current scene view.